package com.micro.ai.auth.service;

/**
 * 令牌黑名单服务接口
 * 
 * @author micro-ai
 * @since 0.0.1
 */
public interface TokenBlacklistService {

    /**
     * 将令牌加入黑名单
     * 
     * @param token 令牌
     * @param expiresIn 过期时间（秒）
     */
    void addToBlacklist(String token, long expiresIn);

    /**
     * 检查令牌是否在黑名单中
     * 
     * @param token 令牌
     * @return 是否在黑名单中
     */
    boolean isBlacklisted(String token);

    /**
     * 从黑名单中移除令牌
     * 
     * @param token 令牌
     */
    void removeFromBlacklist(String token);

    /**
     * 清理过期的黑名单令牌
     */
    void cleanExpiredTokens();
}
